It has previously been proposed to detect engine misfire by direct sensing of the gas mixture through optical means or pressure signals. It is also known to use engine speed in one cylinder firing event compared with that of another cylinder event to define combustion variation or engine roughness. Engine speed has also been used by employing a very high resolution engine position encoder to yield hundreds of speed data points in each engine revolution and circuitry for detecting the maximum and minimum speeds, and deducing misfire from them. In the present disclosure it will be shown that low resolution engine speed information on the order of six data points per engine revolution can be used to detect misfire and combustion in individual cylinders. Moreover, the misfire can be determined before the combustion stroke is completed. It will further be shown that the combustion and misfire information can be used, not only for diagnostic purposes, but also for fuel control during cranking to enhance the ease of starting an engine, which is especially desirable in cold weather.
The fuel control will utilize a two pulse fuel injection technique of injecting a first pulse during the exhaust stroke of the engine and a second pulse during the subsequent intake stroke. The second pulse is varied on the basis of recent engine operation information to optimize the fuel input. This already known technology can take into account the rate of air intake and other variables, but heretofore has not been able to accommodate the effects of engine misfire. Misfire has the effect of leaving in the cylinder some of the fuel vapor so that the continued addition of standard amounts of fuel in subsequent combustion cycles causes the air/fuel mixture to become too rich, even to the point of flooding the engine. Combustion, on the other hand, results in a residue of burned gases in a cylinder and requires a different amount of fuel than one which has not experienced combustion.